import re

# Паттерн для поиска в лог-файле
pattern = r'(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}\.\d{6}\+\d{2}:\d{2}) (\S+) (\S+)\[(\d+)\] \[(\d+:\d+:\d+)\] (.*?) \[Classification: (.*?)\] \[Priority: (\d+)\] \{(\S+)\} (\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}):(\d+)\s*->\s*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}):(\d+)'

# Открываем файл для чтения
with open('snort.log', 'r') as file:
    for line in file:
        match = re.search(pattern, line)
        if match:
            # Извлекаем необходимую информацию
            attacker_ip = match.group(10)
            target_ip = match.group(12)
            target_port = match.group(13)
            attack_name = match.group(6)
            
            # Выводим информацию
            print(f"Адрес атакующего: {attacker_ip}")
            print(f"Цель атаки: {target_ip}:{target_port}")
            print(f"Название атаки: {attack_name}")
            print("---")    